package com.coolingme.domain.alipay;

/**
 * 统一收单下单并支付请求参数<br>
 * https://docs.open.alipay.com/api_1/alipay.trade.page.pay/
 * 
 * @author wangyue
 * @date 2019-06-20 23:53:25
 */
public class AlipayModal {

	/**
	 * 商户订单号,64个字符以内、可包含字母、数字、下划线；需保证在商户端不重复 ；<br>
	 * 必选；最大长度：64<br>
	 * 如：20150320010101001
	 */
	private String outTradeNo;

	/**
	 * 销售产品码，与支付宝签约的产品码名称。 注：目前仅支持FAST_INSTANT_TRADE_PAY <br>
	 * 必选；最大长度：64<br>
	 * 如：FAST_INSTANT_TRADE_PAY
	 */
	private String productCode;

	/**
	 * 订单总金额，单位为元，精确到小数点后两位，取值范围[0.01,100000000]。 <br>
	 * 必选；最大长度：11<br>
	 * 如：88.88
	 */
	private Double totalAmount;

	/**
	 * 订单标题 <br>
	 * 必选；最大长度：256<br>
	 * 如：Iphone6 16G
	 */
	private String subject;

	/**
	 * 订单描述 <br>
	 * 可选；最大长度：128<br>
	 * 如：Iphone6 16G
	 */
	private String body;

	public String getOutTradeNo() {
		return outTradeNo;
	}

	public void setOutTradeNo(String outTradeNo) {
		this.outTradeNo = outTradeNo;
	}

	public Double getTotalAmount() {
		return totalAmount;
	}

	public void setTotalAmount(Double totalAmount) {
		this.totalAmount = totalAmount;
	}

	public String getSubject() {
		return subject;
	}

	public void setSubject(String subject) {
		this.subject = subject;
	}

	public String getBody() {
		return body;
	}

	public void setBody(String body) {
		this.body = body;
	}

	/**
	 * 目前仅支持 FAST_INSTANT_TRADE_PAY
	 */
	public String getProductCode() {
		return "FAST_INSTANT_TRADE_PAY";
	}

	@Override
	public String toString() {
		return "AlipayModal [outTradeNo=" + outTradeNo + ", productCode=" + productCode + ", totalAmount=" + totalAmount
				+ ", subject=" + subject + ", body=" + body + "]";
	}

	
	
}
